#include "HiranipraShared.h"

#include "HCM/IComponent.h"

#ifndef _SHARED_PLATFORM_GRAPHICS_IVERTEXBUFFER_H_
#define _SHARED_PLATFORM_GRAPHICS_IVERTEXBUFFER_H_

namespace Hiranipra {
	namespace Platform {
		namespace Graphics {

			class IVertexBuffer : implements IBuffer
			{
			public:
				IVertexBuffer( const BufferFlags flags, VertexDeclaration* vertexDecl, uint32 elementCount ) :
					IBuffer( flags, elementCount, vertexDecl->GetStrideSize() ),
					_decl( vertexDecl )
				{
				}
				virtual ~IVertexBuffer(){}

				VertexDeclaration* GetDeclaration() const { return _decl; }

			protected:
				VertexDeclaration*	_decl;
			};

		}
	}
}

#endif // _SHARED_PLATFORM_GRAPHICS_IVERTEXBUFFER_H_
